package leetcode;

import java.math.BigInteger;
import java.util.Date;

public class Code2 {
    public static void main(String[] args) {
        System.out.println("士大夫士大夫");
    }
    /**
     * 复杂做法，使用计算法
     * @param k
     * @param n
     * @return
     */
    public int digitCounts(int k, int n) {
        int item;
        int beforeNumber;
        int base = 10;
        int all = 0;
        do {
            beforeNumber = n / base * base;
            item = (n - beforeNumber) / (base / 10);
            if (item > k) {
                all += (n / base + 1) * (base / 10);
            } else if (item == k) {
                all += (n / base) * (base / 10) + (n % (base / 10) + 1);// 1 12 这种情况下注意有全零的数字   21345这个数据
            } else {
                all += (n / base) * (base / 10);
            }
            base *= 10;
        } while (beforeNumber != 0);
        if (k == 0 && base > 100) {//01 02 不算数
            all -= base / 100;
        }
        return all;
    }

    public int digitCounts3(int k, int n) {
        // write your code here
        int sum=0;
        for(int i=0;i<=n;i++){
            int num=i;
            while(num/10!=0){
                if(num%10==k){
                    sum++;
                }
                num=num/10;
            }
            if(num==k)
                sum++;
        }
        return sum;
    }
}
